package robots.models;

import java.io.Serializable;

import robots.domain.CompraVentaDeRobots;
import robots.domain.Jugador;
import robots.domain.Robot;


public class VentaRobotAppModel  implements Serializable {
	
	private static final long serialVersionUID = -2605055612237187855L;
	private CompraVentaDeRobots compraVentaDomain;
	private Robot robotAVender;
	private Jugador jugador;
	private Jugador sistema;
	private int oferta;

	public VentaRobotAppModel(Jugador jugador, Jugador sistema, Robot robot) {
		this.compraVentaDomain= new CompraVentaDeRobots();
		this.jugador= jugador;
		this.sistema= sistema;
		this.robotAVender= robot;
	}
	
	// Getters
	public Robot getRobot() {
		return robotAVender;
	}

	public Jugador getJugador() {
		return jugador;
	}

	public Jugador getSistema() {
		return sistema;
	}

	
	public CompraVentaDeRobots getCompraVentaDomain() {
		return compraVentaDomain;
	}
	
	public int getOferta() {
		return oferta;
	}

	public void setOferta(int oferta) {
		this.oferta = oferta;
	}
	
	public void setRobot(Robot robotAVender) {
		this.robotAVender = robotAVender;
	}
	
	// Methods
	public void vender() {
		this.compraVentaDomain.sell(this.getOferta(), this.getRobot(), this.getJugador(), this.getSistema());
	}
	
	public Integer getOfertaDelSistema() {
		this.setOferta((Integer) this.compraVentaDomain.ofertarPorUnRobot(this.robotAVender.getPrecio()));
		return this.getOferta();
	}

	public void rechazarOferta() {
		this.compraVentaDomain.rechazarOferta(this.robotAVender);
	}
}
